A virtual machine (VM) is an emulation of a computer system. Virtual machines are based on computer architectures and provide functionality of a physical computer. System virtual machines, also referred to as full virtualization VMs, provide a substitute for a real machine—providing functionality needed to execute entire operating systems. In contrast, process virtual machines are designed to execute computer programs in a platform-independent environment.
VMs have extensive data security requirements and typically need to be continuously available to deliver services to customers. For disaster recovery and avoidance, service providers that utilize VMs need to avoid data corruption and service lapses to customers, for services delivered both by an external machine and via the cloud.
Virtual machine replication (VM replication) is a type of VM protection that takes a copy, also referred to as a snapshot, of the VM as it is at the present time and copies it to another VM. Users of VMs need to be able to replicate their VMs to protect their data locally within a single site and to isolate data between two sites.
VM backup and replication are essential parts of a data protection plan. Backup and replication are both necessary to keep a source virtual machine's data so it can be restored on demand. VM backup and replication have different objectives.
VM backups are intended to store the VM data for as long as deemed necessary to make it feasible to go back in time and restore what was lost. As the main objective of backups is long-term data storage, various data reduction techniques are typically used by backup software to reduce the backup size and fit the data into the smallest amount of disk space possible. This includes skipping unnecessary swap data, data compression, and data deduplication, which removes the duplicate blocks of data and replaces them with references to the existing ones. Because VM backups are compressed and deduplicated to save storage space, they no longer look like VMs and are often stored in a special format that a backup software app can understand. Because a VM backup is just a set of files, the backup repository is a folder, which can be located anywhere: on a dedicated server, storage area network (SAN) or in a cloud.
Modern backup software allows for various types of recovery from backups: professionals can near-instantly restore individual files, application objects, or even entire VMs directly from compressed and deduplicated backups, without running the full VM restore process first. Backups of virtual infrastructure are critical but when something happens to multiple virtual machines or perhaps an entire site, it becomes necessary to restore the data either back to the original virtual machine or recreate the entire virtual machine from that backup data.
VM replication creates an exact copy of the source VM and puts the copy on target storage, to circumvent the time required to bring data or services back online in the event of a site-wide failure or severely impaired primary site, whether it be hardware failure, a natural disaster, malware, or self-inflicted impairment. VM replicas, the result of replication, are usable to restore the VMs as soon as possible.
A hypervisor is a virtual machine monitor that uses native execution to share and manage hardware, allowing for multiple environments which are isolated from one another, yet exist on the same physical machine hardware. For example, third-party service VMware© utilizes ESXi architecture as a bare-metal hypervisor that installs directly onto a physical server, enabling it to be partitioned into multiple logical servers referred to as VMs. In one example, VMware© vCenter, a centralized management application for managing VMs and ESXi hosts centrally, identifies a VM by an ID that is assigned by the resource manager when the virtual machine is registered.
Tracking of snapshots that back up VMs can get disrupted when a VM is unregistered and then re-registered or if the VM is moved to a different vCenter via the hypervisor. Two problems are associated with unregistering and reregistering a VM, or with moving a VM to a different vCenter. First, the new VM has no history of the snapshots taken by the old VM, even though the new VM and old VM are different reincarnations of the same VM. When the history of snapshots associated with a given VM is reset, compliance enforcement becomes much more complicated from a customer perspective. Secondly, the new VM must take a full snapshot because no base snapshot is associated with the new VM. The creation of a new snapshot includes capturing a lot of data, so requires a lot of time.
An opportunity arises to keep a snapshot history, stored in sequence, and spanning multiple VMs, even when VMs are unregistered and reregistered and when VMs are moved from one data center to another data center, and to take incremental snapshots across multiple linked VMs.